﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Helpers;
using System.Web.Mvc;
using System.Web.Script.Serialization;
using SampleAjaxMvc.Models;

namespace SampleAjaxMvc.Controllers
{
    public class ArtistaController : Controller
    {
        //
        // GET: /Artista/

        public ActionResult Index()
        {
            return View(Artista.GetLista());
        }

        
        public JsonResult Create(Artista artista)
        {
            try
            {
                artista.AddItem();

                var result = new Result<Artista> { Message = "Criado com Sucesso", Success = true, Obj = artista };

                return Json(result);
            }
            catch (Exception)
            {
                var result = new Result<Artista> { Message = "Erro no cadastro", Success = false, Obj = null };
                return Json(result);
            }
        }

        public JsonResult Edit(Artista artista)
        {
            try
            {
                Artista art = Artista.GetItem(artista.Id);
                art.Nome = artista.Nome;
                art.Sobrenome = artista.Sobrenome;

                var result = new Result<Artista> { Message = "Alterado com Sucesso", Success = true, Obj = art };

                return Json(result);
            }
            catch (Exception)
            {
                var result = new Result<Artista> { Message = "Erro ao Editar", Success = false, Obj = null };
                return Json(result);
            }
        }

        public JsonResult GetItem(int Id)
        {
            return Json(Artista.GetItem(Id));
        }

        //[HttpPost]
        //public ActionResult Create(Artista artista)
        //{
        //    try
        //    {
        //        artista.AddItem();
        //        return RedirectToAction("Index");
        //    }
        //    catch (Exception)
        //    {
        //        return RedirectToAction("Create");
        //    }
        //}

    }
}
